package com.hzbc.faceattendance.exception;

public enum BizError {

    ERROR_NONE(0, "ok"), // 没有错误
    ERROR_UNKNOWN(500, "未知错误"),
    ERROR_PHONE_USED(1, "手机号已经被占用"),
    ERROR_EMAIL_USED(2, "邮箱地址已经被占用"),
    ERROR_USERNAME_USED(3, "用户名已经被占用"),
    ERROR_CREATE_DATA(4, "数据创建错误"),
    ERROR_UPDATE_DATA(5, "数据修改错误"),
    ERROR_DATA_NOT_FOUND(6, "查询的数据不存在"),
    ERROR_FORBIDDEN(7, "你没有访问权限"),
    ERROR_ROLE_NAME_DUPLICATED(8, "角色名称重复"),
    ERROR_ACCOUNT_USED(9, "帐号已经被占用"),
    ERROR_EMPLOYEE_NUMBER_USED(10, "工号已经被占用"),
    ERROR_GROUP_CODE_USED(11, "分组编号不能重复"),
    ERROR_GROUP_NAME_USED(12, "分组名称不能重复"),
    ERROR_ALREADY_EXIST(13, "数据已经存在"),
    ERROR_USER_EXISTED_GROUP(14, "用户已经在其他分组中"),
    ERROR_GROUP_NOT_EXIST(15, "分组不存在"),
    ERROR_PERMISSION_URL_NOT_NULL(16, "权限的url不能为空"),
    ERROR_PERMISSION_VALUE_EXIST(17, "权限的value值已经存在"),
    ERROR_DECRPTY_PHONE(18, "解密用户手机号失败"),
    ERROR_DECRPTY_USER_INFO(19, "解密用户信息失败"),
    ERROR_ROLE_NOT_EXIST(20, "角色不存在"),
    ERROR_RPC_INVOKE_FAILED(21, "RPC调用失败!"),
    ERROR_PERMISSION_NAME_NOT_NULL(22, "权限的名称不能为空"),
    ERROR_ROLE_USED(23, "该角色有用户使用，不能删除"),
    ERROR_CODE_USED(24, "code已被使用，无效"),
    ERROR_NAME_REPTITION(25, "费用名称重复"),
    ERROR_MERCHANT_NULL(26, "商家信息不完整"),
    ERROR_MERCHANT_DATA(27, "您还没有成为商家"),
    ERROR_MERCHANT_APPLY(28, "您已提交入驻商家申请，请等待审核"),
    ERROR_BANLANCE_FEW(29, "商家余额不足，请充值"),
    ERROR_COMPANY_INFO(30, "公司信息不完整"),
    ERROR_COMLAINT_NULL(31, "回复内容为空"),
    ERROR_CHECK_REASON(32, "请填写审核不通过原因"),
    ERROR_NOTE_FEE(33, "该用户暂未产生费用"),
    ERROR_UNBIND_SIGNOUT(4021, "该账户处于签到状态，无法解绑，请先进行签退"),
    AE_SYSTEM_ERROR(4000, "系统异常，请稍后重试或联系管理员"),
    ERROR_REQUIRE_AUTHENTICATION(4001, "无可用身份信息,请输入合适的身份信息"),
    ERROR_DATA_CAST(4002, "数据转换异常"),
    ERROR_TOKEN_INVALID(4003, "Token失效!"),
    AE_SIGNED_SITE(4004, "该站点已被%s签到，请联系组长"),
    AE_REST_TIME(4005, "当前时间不在工作时间内，工作再忙也要注意休息哦"),
    AE_WORK_TIME(4007, "当前时间为工作时间，不能进行出车签退操作哦"),
    AE_ALREADY_SIGNED(4006, "您已在%s站点签到，不能重复签到"),
    AE_SITE_NOT_EXIST(40011, "站点不存在"),
    AE_USER_NOT_EXIST(4012, "用户不存在"),
    AE_NOT_SIGNIN(4013, "您未在任何站点签到"),
    ERROR_PLATE_EMPTY(4014, "车牌号不能为空"),
    ERROR_SESSION_NOT_EXIST(4015, "session不存在"),
    ERROR_SESSION_INVALID(4016, "session过期"),
    ERROR_PLATE_VALUE(4017, "车牌号不合法"),
    ERROR_PLATE_EXIST(4018, "车牌号已被绑定"),
    AE_WC_NOPARKING(4019, "未获取到该车的在停信息,如车辆已驶离停车点位，请使用该公众号查询您是否欠费"),
    AE_ALREADY_IN_GROUP(4020, "该账号是%s的组员,请核实"),
    AE_AUTH_ONSIGN(4021, "该账号在%s站点处于签到状态,请先签退再进行授权或取消授权操作"),
    AE_NO_GROUP(4022, "未获取到Id为%s的分组信息"),
    AE_CANT_REMOVE_LEADER(4023, "不能删除组长"),
    AE_ON_SIGN(4024, "该账号在%s站点处于签到状态,请先签退再进行删除操作"),
    AE_UNBINDING_DEVICE(4025, "该设备未绑定您的账号，请先申请设备绑定并联系组长"),
    AE_BINDING_DEVICE(4026, "该设备已绑定其他账号，请联系组长"),

    ERROR_EMPTY_ACCOUNT(4027, "用户名不能为空"),
    ERROR_EMPTY_PASSWORD(4028, "密码不能为空"),
    ERROR_PASSWORD_WRONG(4029, "密码错误"),
    ERROR_USER_PASSWORD_WRONG(4030, "用户名或密码错误"),
    ERROR_CLIENT_ID_WRONG(4031, "客户端编号参数错误"),
    ERROR_CLIENT_SECRET_WRONG(4032, "客户端密钥参数错误"),
    ERROR_WAP_CREATE_ORDER(4033, "手机网站支付订单创建异常"),


    ERROR_CLOSE_TRADE(4034, "订单关闭异常"),

    ERROR_QUERY_TRADE(4035, "订单查询异常"),

    ERROR_REFUND_TRADE(4036, "退款异常"),

    ERROR_REFUND_QUERY_TRADE(4037, "退款查询异常"),

    ERROR_CACHE_LOADING(4038, "缓存数据加载失败"),

    ERROR_BOCOM_INITIALIZE(4039, "交行客户端初始化失败"),

    ERROR_ICBC_EXCEPTION(4040, "工行支付异常"),

    AE_NOT_ENOUGH_MONEY(4041, "账户余额不足"),

    ERROR_APPLY_QRCODE(4042, "二维码申请失败"),

    ERROR_PARAMETER_INVALID(4043, "参数校验失败"),

    ERROR_PAREMETER_NULL(4044, "参数值不能为空"),

    ERROR_SORT_VALUE(4045, "排序字段值格式错误"),

    ERROR_FREEZE_ACCOUNT(4046, "帐号被冻结"),

    ERROR_DEACTIVE_ACCOUNT(4047, "帐号未激活"),

    ERROR_ACCOUNT_DELETED(4048, "帐号已被删除"),

    PARAMETER_VALIDATE_ERR(4049, "参数校验失败 %s"),

    ERROR_LOGOUT(4050, "登出失败"),

    AE_NO_CHARGING(4051, "该站点费率配置不完整，请联系管理员"),

    AE_NOT_DATA(4052, "未获取到数据信息"),

    AE_INVALID_PARAMETER(4053, "参数校验错误"),

    AE_NO_PARKING(4055, "该车辆当前未在泊位"),

    AE_SPACE_PARKING(4056, "该车位当前正在执行进车操作，请勿重复操作"),

    AE_ALREADY_PARK(4057, "该车辆在%s停放，请联系组长"),


    AE_NOT_SERVICE(4058, "此服务暂未开通"),

    AE_NOT_DEVICEDATA(4059, "没有该设备信息"),

    AE_NO_USER_REPORT(4060, "今日未产生收费记录"),

    AE_NO_TIME(4061, "该操作必须传入时间"),

    PARAMM_NULL(4062, "参数为空"),

    AE_WS_NOSIGN(4063, "socket连接异常:该站点尚未签到"),

    AE_ON_PARKING(4064, "你将修改的车牌，此时正停在%s站点，请确认车牌号的真实性"),

    PAY_WAY_CONFIG_ERROR(4065, "请通知管理员，配置支付方式"),

    HAVE_ALREADY_PAID(4066, "该订单已经支付，请不要重复支付"),
    USER_ALREADY_EXISTED_GROUP(4067, "用户已经在分组中"),

    // 约束条件错误
    CONSTRAINTS(4068, "%s"),

    ERROR_SPACE_NOT_BIND_DEVICE(4069, "泊位%s暂时未绑定设备"),
    ERROR_NOT_RECEIVE_ORDER(4070, "该维修记录暂时未接单"),
    ERROR_NOT_REPEAT_RECEIVE_ORDER(4071, "重复接单"),
    ERROR_ORDER_FINISHED(4072, "该订单已完成，无法提交"),
    ERROR_ORDER_limit(4073, "请先完成之前的订单，待维修订单不可超过3个"),
    ERROR_ORDER_STATUS(4074, "订单状态必须为维修中，才能更换为核查状态"),
    ERROR_ORDER_STATUS_CHECK_REPEAT(4075, "订单状态已为核查状态，切勿重复提交"),
    ERROR_NOT_REPEAT_SUBMIT_ORDER(4076, "订单已提交，切勿重复提交"),
    ERROR_NOT_ABNORMAL_ORDER(4077, "该订单不是异常订单，无法上线"),
    ERROR_DEVICE_IN_USE(4078, "设备正在使用，无法下线"),
    ERROR_ORDER_BINDING(4079, "设备绑定维修订单，无法上线"),
    ERROR_NOT_REPEAT_OPERATION(4080, "请勿重复操作"),
    ERROR_SMS_SEND(4081, "短信发送失败"),
    ERROR_CHECK_NULL(4082, "需说明审核不通过原因"),
    ERROR_ID_UPDATE(4083, "公司ID不允许修改"),
    ERROR_TOKEN_EXPIRATION(4083, "token已过期"),
    ERROR_AUTH_WRONG(4084, "校验服务异常"),
    ERROR_DEVICE_NOT_BINDING(4085, "该用户还未绑定pda"),
    ERROR_NOT_NEW_LOCATION(4086, "该用户今日还没有最新的位置信息"),
    ERROR_PHONE_NULL(4087, "该手机号未绑定公众号"),
    ERROR_USER_ROLE(4088, "权限不足，请联系管理员"),
    AE_NO_PARK_SPACE(4089, "该停车场无空闲车位"),
    AE_NO_PARK_SPACE_BLUE(4090, "该停车场无空闲车位"),
    CAR_ALREADY_OUT(4091, "停车场未查到该车"),
    CAR_ALREADY_OUT_BLUE(4092, "停车场未查到该车"),
    ERROR_YINLIAN_EXCEPTION(4093,"银联支付异常"),
    GOLDENYUN_CALLBACK_ERRO(4094,"高灯云开票回调异常"),
    NOT_TIME_TO_EAT(4095,"不在就餐时间内"),
    EAT_OVERTIME_WARNING(4096,"超出就餐时长"),
    YI_QIANDAO(4097,"请勿重复打卡"),
    ERROR_FUNCTION_UNOPEN(4098,"该功能暂未开通"),
    ACTIVITY_ERROR(4099,"活动暂未开启，请留意活动通知"),
    ACTIVITY_EXIST_ERROR(4100,"充值活动已开启，请检查后再开启新的充值活动");

    private int code;

    private String msg;

    BizError(int code, String msg) {
        this.code = code;
        this.msg = msg;
    }

    public int getCode() {
        return code;
    }

    public void setCode(int code) {
        this.code = code;
    }

    public String getMsg() {
        return msg;
    }

    public void setMsg(String msg) {
        this.msg = msg;
    }
}
